import Mock from 'mockjs2'
import { builder } from '../util'

// const productList = [{
//   key: '1',
//   name: 'John Brown',
//   age: 32,
//   address: 'New York No. 1 Lake Park',
//   tags: ['nice', 'developer'],
// }, {
//   key: '2',
//   name: 'Jim Green',
//   age: 42,
//   address: 'London No. 1 Lake Park',
//   tags: ['loser'],
// }, {
//   key: '3',
//   name: 'Joe Black',
//   age: 32,
//   address: 'Sidney No. 1 Lake Park',
//   tags: ['cool', 'teacher'],
//   }]

const data = Mock.mock({
  'productList|11-20': [{
    'key|+1': 1,
    'name': '@sentence(1, 2)',
    'age|0-100': 1,
    'address': '@csentence(5, 10)',
    'tag': (context) => {
      const arr = ['loser', 'cool', 'teacher', 'nice', 'developer']
      return arr.slice(0, Math.floor(Math.random() * 10))
    } 
  }]
})

// console.log(data)

// var data = Mock.mock({
//   'data|1-5': [{
//     'name|1-5': 'abc',
//     'gender|5': '男',
//     'age|+2': 18,
//     'num|3-500': 0,
//     'isShow|1-3': true,
//     'obj|2': {
//       x: 100,
//       y: 200,
//       z: 300
//     },
//     'regexp3': /\d{5,10}/,
//     'text': '@cparagraph(2)',
//     'color': "@image('200x100', '#ffcc33', '#FFF', 'png', '!')"
//   }]
// })

const getProList = (options) => {
  const json = builder(data.productList)
  return json
}

Mock.mock('/api/products/list', 'get', getProList)